/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package net.gis.eemc.dao;

import java.util.List;

import net.gis.eemc.domain.Discipline;
import net.gis.eemc.domain.ExcerptGos;
import net.gis.eemc.domain.GuidelinesCp;
import net.gis.eemc.domain.GuidelinesLab;
import net.gis.eemc.domain.LectureSynopsis;
import net.gis.eemc.domain.WorkProgram;

/**
 *
 * @author Sergey
 */
public interface DisciplineDocsDAO {

    // ExcerptGOS
    public void addExcerptGOS(ExcerptGos doc);

    public void updateExcerptGOS(ExcerptGos doc);

    public void removeExcerptGOS(ExcerptGos doc);

    public List<ExcerptGos> listExcerptGos();

    public List<ExcerptGos> listExcerptGos(Discipline discipline);

    // GuidlinesCp
    public void addGuidlinesCp(GuidelinesCp doc);

    public void updateGuidlinesCp(GuidelinesCp doc);

    public void removeGuidlinesCp(GuidelinesCp doc);

    public List<GuidelinesCp> listGuidelinesCp();

    public List<GuidelinesCp> listGuidelinesCp(Discipline discipline);

    // GuidlinesLab
    public void addGuidlinesLab(GuidelinesLab doc);

    public void updateGuidlinesLab(GuidelinesLab doc);

    public void removeGuidlinesLab(GuidelinesLab doc);

    public List<GuidelinesLab> listGuidelinesLab();

    public List<GuidelinesLab> listGuidelinesLab(Discipline discipline);

    // LectureSynopsis
    public void addLectureSynopsis(LectureSynopsis doc);

    public void updateLectureSynopsis(LectureSynopsis doc);

    public void removeLectureSynopsis(LectureSynopsis doc);

    public List<LectureSynopsis> listLectureSynopsis();

    public List<LectureSynopsis> listLectureSynopsis(Discipline discipline);

    // WorkProgram
    public void addWorkProgram(WorkProgram doc);

    public void updateWorkProgram(WorkProgram doc);

    public void removeWorkProgram(WorkProgram doc);

    public List<WorkProgram> listWorkProgram();

    public List<WorkProgram> listWorkProgram(Discipline discipline);
}
